home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Magnum One
/
Magnum One (Mid-American Digital) (Disc Manufacturing).iso
/
d3
/
dbmail.arc
/
ML0400.PRG
< prev
next >
Wrap
Text File
|
1988-06-18
|
5KB
|
243 lines
NOTE ML0400 - INITIALIZE OR REPACK MAILING LIST FILE ON DISKETTE 9/23/84
DO WHILE T
ERASE
?
? ' MAILING LIST FILE MAINTENANCE'
?
?
? ' 1 - INITIALIZE NEW MAILING LIST DATA FILE'
? ' 2 - SELECT EXISTING MAIL LIST FILE FOR PROCESSING'
? ' 3 - DROP DELETED RECORDS FROM CURRENT MAILING LIST FILE'
?
?
? ' Select Mail List Records and'
?
? ' 4 - REMOVE/ADD CODES TO CODES FIELD'
? ' 5 - DELETE RECORDS'
? ' 6 - UPDATE ANOTHER MAILING LIST'
?
? ' 7 - RECOVER BACK UP COPY OF A MAILING LIST FILE'
?
?
? ' 99 - RETURN TO MAIN MENU'
?
IF XXF
? ' '
?? FDEV
?? '= Mailing List file in use'
ELSE
? 'NO FILE IN USE. SELECT OPTION 1 or 2 BEFORE ANY MAIL LIST ACTIVITIES.'
ENDIF
?
?
INPUT 'SELECT OPTION' TO RESP
DO CASE
CASE RESP=1
STORE F TO XXF
RELEASE FDEV
?
ACCEPT 'ENTER NEW MAILING LIST (device:)FILE NAME to CREATE.' TO SEL
DO CASE
CASE SEL=' '.AND. LEN(SEL)=1
?
? 'NO FILE NAME ENTERED. PLEASE ENTER FILE NAME. Press any key to continue.'
WAIT
OTHERWISE
IF LEN(SEL)-@(':',SEL)<8
STORE !(SEL) TO FDEV
?
? 'PREPARE DEVICE TO RECEIVE MAILING LIST FILE. Press any key when ready.'
WAIT
RESET
STORE FILE('&FDEV..DBF') TO XXF
IF XXF
?
? 'DUPLICATE MAILING LIST FILE &FDEV FOUND. THIS FILE WILL BE ERASED IF YOU PROCEED.'
ENDIF
?
ACCEPT 'DO YOU WISH TO CONTINUE? (Y/N) ' TO OPT
IF OPT='Y'
?
ACCEPT 'ENTER DESCRIPTION OF FILE' TO DESCR
USE ML0400
COPY TO &FDEV
USE &FDEV
APPEND BLANK
REPLACE RECID WITH 0;
INST WITH DESCR
DELETE
INDEX ON RECID TO &FDEV
USE
STORE T TO XXF
? 'NEW MAILING LIST FILE &FDEV INITIALIZED.'
ELSE
STORE F TO XXF
RELEASE FDEV
ENDIF
ELSE
?
? 'MAILING LIST FILE NAME MORE THAN 7 CHARACTERS IN LENGTH. Press any key to continue.'
WAIT
ENDIF
ENDCASE
CASE RESP=2
?
? 'ENTER NEW MAILING LIST (device:)FILE NAME for PROCESSING.'
ACCEPT ' <cr> TO CLOSE CURRENT FILE.' TO SEL
DO CASE
CASE SEL=' '.AND. LEN(SEL)=1
STORE F TO XXF
RELEASE FDEV
OTHERWISE
IF LEN(SEL)-@(':',SEL)<8
STORE !(SEL) TO FDEV
?
? 'PREPARE DEVICE WITH MAILING LIST FILE FOR PROCESSING. Press any key when ready.'
WAIT
RESET
STORE FILE('&FDEV..DBF') TO XXF
IF .NOT.XXF
?
? 'MAILING LIST FILE &FDEV NOT FOUND. PLEASE REENTER FILE NAME.'
? ' Press any key to continue.'
WAIT
ELSE
IF .NOT.FILE('&FDEV..NDX')
?
? 'INDEXING MAILING LIST FILE. Please wait.'
SET TALK ON
USE &FDEV
INDEX ON RECID TO &FDEV
SET TALK OFF
USE
ENDIF
ENDIF
ELSE
?
? 'MAILING LIST FILE NAME MORE THAN 7 CHARACTERS IN LENGTH.'
? ' Press any key to continue.'
WAIT
STORE F TO XXF
RELEASE FDEV
ENDIF
ENDCASE
CASE RESP=3.AND.XXF
?
? 'THIS PROCEDURE DROPS ALL DELETED RECORDS. <cr> TO CONTINUE, N=RETURN TO MENU.'
WAIT TO OPT
IF OPT#'N'
USE &FDEV
GOTO 1
IF * .AND. RECID=0
RECALL
ENDIF
SET TALK ON
PACK
INDEX ON RECID TO &FDEV
SET TALK OFF
GOTO 1
IF RECID=0
DELETE
ENDIF
USE
? 'MAILING LIST FILE PURGED OF DELETED DETAIL'
ENDIF
CASE XXF.AND.(RESP=4 .OR. RESP=5 .OR. RESP=6)
ERASE
@ 6,10 SAY 'Enter Criteria to Select Records from the Database'
@ 8,10 SAY ' 1 - Select Records for Match on ALL Records'
@ 9,10 SAY ' 2 - Select Records for Match on Input Reference Code'
@ 10,10 SAY ' 3 - Select Records for Match on User Boolean Input'
STORE 0 TO OPT
@ 12,10 SAY 'Input Option ' GET OPT PICTURE '9'
READ
IF OPT<1 .OR. OPT>3
@ 14,1 SAY 'Invalid Option Code Entered. Press any Key to Return to Menu.'
RELEASE OPT
WAIT
ELSE
DO CASE
CASE RESP=4
DO ML0440
CASE RESP=5
DO ML0442
USE &FDEV
DO CASE
CASE OPT=1
DO ML0451
CASE OPT=2
DO ML0452
CASE OPT=3
DO ML0453
ENDCASE
?
? 'DELETED Records are Removed by Running Option 3, Purge Deletes.'
? ' This Option Should be Run After Delete Activity is Complete.'
WAIT
OTHERWISE
DO ML0460
ENDCASE
ENDIF
CASE RESP=7
?
ACCEPT 'ENTER (DEV:)NAME OF MAILING LIST FILE TO RECOVER ' TO SEL
DO CASE
CASE SEL=' '.AND. LEN(SEL)=1
OTHERWISE
IF LEN(SEL)-@(':',SEL)<8
STORE !(SEL) TO FIL
?
? 'PREPARE DEVICE WITH BACK UP MAILING LIST FILE FOR PROCESSING. Press any key when ready.'
WAIT
RESET
STORE FILE('&FIL..BAK') TO OK
IF .NOT.OK
?
? 'BACK UP MAILING LIST FILE &FIL NOT FOUND. Press any key to continue.'
WAIT
ELSE
STORE FILE('&FIL..DBF') TO OK
IF OK
?
? 'Mailing List File Found on Disk. Replace with Back up Copy?'
ACCEPT ' ENTER RESPONSE (Y/N) ' TO SEL
STORE !(SEL)='N' TO OK
IF .NOT.OK
DELETE FILE &FIL
ENDIF
ENDIF
IF .NOT.OK
RENAME &FIL..BAK TO &FIL
?
? 'INDEXING FILE &FIL . Please wait.'
SET TALK ON
USE &FIL
INDEX ON RECID TO &FIL
SET TALK OFF
USE
ENDIF
ENDIF
ELSE
?
? 'MAILING LIST FILE NAME MORE THAN 7 CHARACTERS IN LENGTH.'
? ' Press any key to continue.'
WAIT
ENDIF
ENDCASE
RELEASE FIL,OK
CASE RESP=99
RELEASE OPT,RESP
RETURN
ENDCASE
ENDDO
F
ENDCASE
RELEASE FIL,OK
CASE RESP=99
RELEASE OPT,RESP
RETURN
ENDCASE
ENDDO